package com.sky.cqculture.service;

import com.github.pagehelper.PageInfo;
import com.sky.cqculture.pojo.Product;
import java.util.List;

public interface ProductService {
    
    /**
     * 根据ID查询商品
     * @param id 商品ID
     * @return 商品对象
     */
    Product findProductById(Integer id);
    
    /**
     * 根据分类ID查询商品
     * @param categoryId 分类ID
     * @return 商品列表
     */
    List<Product> findProductsByCategoryId(Integer categoryId);
    
    /**
     * 获取爆款商品
     * @param limit 查询数量
     * @return 商品列表
     */
    List<Product> getPopularProducts(Integer limit);
    
    /**
     * 分页查询商品（推荐使用这个方法替代获取所有商品）
     * @param categoryId 分类ID（可为空）
     * @param sortType 排序方式（default, sales, priceAsc, priceDesc）
     * @param pageNum 页码
     * @param pageSize 每页数量
     * @return 分页结果
     */
    PageInfo<Product> findProductsByPage(Integer categoryId, String sortType, Integer pageNum, Integer pageSize);
}